home *** CD-ROM | disk | FTP | other *** search
/ Apple II Magazines (DO) / Softdisk Magazette Volume 1, No. 06 (1982-02)(Softdisk)(Side B).zip / Softdisk Magazette Volume 1, No. 06 (1982-02)(Softdisk)(Side B).do / HEWITT.GRAPHICS.bas < prev    next >
BASIC Source File  |  1996-12-24  |  9KB  |  308 lines

  1. 100  LET M = 49152 -( PEEK(105) + PEEK(106) *256)
  2. 110 U =  -16336
  3. 120  HOME 
  4. 130  GR 
  5. 140  VTAB 22
  6. 150  PRINT  TAB( 12)"THE GRAPHICS DEMO"
  7. 160  COLOR= 13
  8. 170  HLIN 11,27 AT 39
  9. 180  HLIN 11,27 AT 38
  10. 190  HLIN 11,27 AT 37
  11. 200  HLIN 11,27 AT 36
  12. 210  HLIN 11,27 AT 35
  13. 220  HLIN 11,27 AT 34
  14. 230  HLIN 12,26 AT 33
  15. 240  HLIN 12,26 AT 32
  16. 250  HLIN 12,26 AT 31
  17. 260  HLIN 13,25 AT 30
  18. 270  HLIN 13,25 AT 29
  19. 280  HLIN 14,24 AT 28
  20. 290  HLIN 15,23 AT 27
  21. 300  HLIN 16,22 AT 26
  22. 310  HLIN 18,20 AT 25
  23. 320  COLOR= 9
  24. 330  VLIN 0,23 AT 19
  25. 340  FOR X = 1 TO 118
  26. 350  READ A
  27. 360  READ B
  28. 370  PLOT A,B
  29. 380  NEXT X
  30. 390  GOSUB 60000
  31. 400  COLOR= 4
  32. 410  FOR X = 39 TO 0  STEP  -1
  33. 420  FOR Y = 0 TO 39
  34. 430  IF  SCRN( Y,X) = 0  THEN  PLOT Y,X
  35. 440  NEXT Y
  36. 450  NEXT X
  37. 460  GOSUB 60000
  38. 470  COLOR= 0
  39. 480  FOR X = 0 TO 39
  40. 490  HLIN 0,39 AT X
  41. 500  VLIN 0,39 AT X
  42. 510  NEXT X
  43. 520  GOSUB 60000
  44. 530  HOME 
  45. 540  FOR Y = 1 TO 4
  46. 550  FOR X = 0 TO 39
  47. 560 C =  INT( RND(1) *16)
  48. 570  COLOR= C
  49. 580  IF Y = 1  THEN X1 = X:X2 = X
  50. 590  IF Y = 2  THEN X1 = X:X2 = 39 -X
  51. 600  IF Y = 3  THEN X1 = 39 -X:X2 = 39 -X
  52. 610  IF Y = 4  THEN X1 = 39 -X:X2 = X
  53. 620  HLIN 0,39 AT X1
  54. 630  VLIN 0,39 AT X2
  55. 640  NEXT X
  56. 650  NEXT Y
  57. 660  FOR X = 0 TO 20
  58. 670  FOR Y = 1 TO  -1  STEP  -2
  59. 680  IF X = 20  AND Y = 1  THEN 720
  60. 690  COLOR=  INT( RND(1) *15 +1)
  61. 700  HLIN 0,39 AT 20 +Y *X
  62. 710  VLIN 0,39 AT 20 +Y *X
  63. 720  NEXT Y
  64. 730  NEXT X
  65. 740  COLOR= 0
  66. 750  FOR X = 1 TO 39  STEP 2
  67. 760  VLIN 0,39 AT X
  68. 770  NEXT X
  69. 780  GOSUB 60020
  70. 790  FOR X = 1 TO 39  STEP 2
  71. 800  HLIN 0,39 AT X
  72. 810  NEXT X
  73. 820  GOSUB 60020
  74. 830  FOR X = 0 TO 38  STEP 2
  75. 840  VLIN 0,39 AT X
  76. 850  NEXT X
  77. 860  FOR Z = 1 TO 5
  78. 870  READ A
  79. 880  READ B
  80. 890  FOR X = 0 TO 18  STEP 2
  81. 900  IF C = B  THEN C = A: GOTO 920
  82. 910 C = B
  83. 920  COLOR= C
  84. 930  FOR Y = 1 TO  -1  STEP  -2
  85. 940  VLIN 20 -X,20 +X AT 20 +X *Y
  86. 950  HLIN 20 -X,20 +X AT 20 +X *Y
  87. 960  NEXT Y
  88. 970  NEXT X
  89. 980  GOSUB 60020
  90. 990  NEXT Z
  91. 1000  FOR Z = 1 TO 5
  92. 1010  FOR X = 1 TO 17  STEP 2
  93. 1020  FOR Y = 1 TO  -1  STEP  -2
  94. 1030  COLOR= 4
  95. 1040  VLIN 20 -X,20 +X AT 20 +X *Y
  96. 1050  COLOR= 0
  97. 1060  VLIN 20 -X,20 +X AT 20 +X *Y
  98. 1070  COLOR= 4
  99. 1080  HLIN 20 -X,20 +X AT 20 +X *Y
  100. 1090  COLOR= 0
  101. 1100  HLIN 20 -X,20 +X AT 20 +X *Y
  102. 1110  NEXT Y
  103. 1120  NEXT X
  104. 1130  NEXT Z
  105. 1140  GR 
  106. 1150 Y = 0
  107. 1160 X = 6
  108. 1170  IF Y = 39  THEN Z =  -1:X = X +1: COLOR= X
  109. 1180  IF Y = 0  THEN Z = 1:X = X +1: COLOR= X
  110. 1190  IF X = 16  THEN 1230
  111. 1200  VLIN 0,39 AT Y
  112. 1210 Y = Y +Z
  113. 1220  GOTO 1170
  114. 1230  FOR Y = 1 TO 4
  115. 1240  COLOR= 0
  116. 1250  FOR X = 1 TO 39  STEP 2
  117. 1260  HLIN 0,39 AT X
  118. 1270  VLIN 0,39 AT X
  119. 1280  NEXT X
  120. 1290  COLOR= 15
  121. 1300  FOR X = 1 TO 39  STEP 2
  122. 1310  HLIN 0,39 AT X
  123. 1320  VLIN 0,39 AT X
  124. 1330  NEXT X
  125. 1340  NEXT Y
  126. 1350  FOR Y = 1 TO 4
  127. 1360  COLOR= 0
  128. 1370  FOR X = 1 TO 39  STEP 2
  129. 1380  HLIN 0,39 AT X
  130. 1390  VLIN 0,39 AT 39 -X
  131. 1400  NEXT X
  132. 1410  COLOR= 15
  133. 1420  FOR X = 1 TO 39  STEP 2
  134. 1430  HLIN 0,39 AT X
  135. 1440  VLIN 0,39 AT 39 -X
  136. 1450  NEXT X
  137. 1460  NEXT Y
  138. 1470  COLOR= 0
  139. 1480  FOR X = 1 TO 200
  140. 1490  PLOT  INT( RND(1) *39 +1), INT( RND(1) *39 +1)
  141. 1500  NEXT X
  142. 1510  GOSUB 60000
  143. 1520  FOR X = 1 TO 200
  144. 1530  COLOR=  INT( RND(1) *16)
  145. 1540  PLOT  INT( RND(1) *39 +1), INT( RND(1) *39 +1)
  146. 1550  NEXT X
  147. 1560  GR 
  148. 1570  FOR X = 4 TO 32  STEP 4
  149. 1580  IF C = 0  THEN C = 15: GOTO 1600
  150. 1590 C = 0
  151. 1600  FOR Y = 4 TO 32  STEP 4
  152. 1610  IF C = 0  THEN C = 15: GOTO 1630
  153. 1620 C = 0
  154. 1630  COLOR= C
  155. 1640  FOR Z = 0 TO 3
  156. 1650  VLIN Y,Y +4 AT X +Z
  157. 1660  NEXT Z
  158. 1670  NEXT Y
  159. 1680  NEXT X
  160. 1690  COLOR= 15
  161. 1700  VLIN 3,37 AT 3
  162. 1710  VLIN 3,37 AT 36
  163. 1720  HLIN 3,36 AT 3
  164. 1730  HLIN 3,36 AT 37
  165. 1740  FOR Z = 1 TO 3
  166. 1750  FOR Y = 1 TO  -1  STEP  -2
  167. 1760  FOR X = 1 TO 27
  168. 1770  IF Y = 1  THEN X1 = X
  169. 1780  IF Y =  -1  THEN X1 = 28 -X
  170. 1790  HOME 
  171. 1800  PRINT  TAB( X1)"CHESS ANYONE?"
  172. 1810  GOSUB 60040
  173. 1820  NEXT X
  174. 1830 H =  -16336
  175. 1840 BIP =  PEEK(H) - PEEK(H) + PEEK(H)
  176. 1850  NEXT Y
  177. 1860  NEXT Z
  178. 1870  HOME 
  179. 1880  PRINT "               CHESS ANYONE?"
  180. 1890  GOSUB 60000
  181. 1900  HOME 
  182. 1910  HGR 
  183. 1920  HCOLOR= 7
  184. 1930  HPLOT 125,75
  185. 1940 Z = 0
  186. 1950 Y =  INT( RND(1) *160)
  187. 1960 X =  INT( RND(1) *280)
  188. 1970  HPLOT  TO X,Y
  189. 1980  IF Z = 60  THEN 2010
  190. 1990 Z = Z +1
  191. 2000  GOTO 1950
  192. 2010  GOSUB 60000
  193. 2020  HGR 
  194. 2030  HCOLOR= 7
  195. 2040 C = 0
  196. 2050  FOR X = 1 TO 151  STEP 5
  197. 2060  HPLOT X,X TO 270 -X,X TO 270 -X,155 -X TO X,155 -X TO X,X
  198. 2070  NEXT X
  199. 2080  HCOLOR= 0
  200. 2090  IF C = 0  THEN C = 1: GOTO 2050
  201. 2100 C = 7
  202. 2110  HCOLOR= C
  203. 2120  FOR X = 156 TO 1  STEP  -5
  204. 2130  HPLOT 1,X TO 157 -X,156
  205. 2140  HPLOT 276,X TO 120 +X,156
  206. 2150  NEXT X
  207. 2160  FOR X = 161 TO 276  STEP 5
  208. 2170  HPLOT X -155,1 TO X,156
  209. 2180  HPLOT 432 -X,1 TO 277 -X,156
  210. 2190  NEXT X
  211. 2200  FOR X = 126 TO 276  STEP 5
  212. 2210  HPLOT X,1 TO 276,277 -X
  213. 2220  HPLOT 1,277 -X TO 277 -X,1
  214. 2230  NEXT X
  215. 2240  IF C = 7  THEN C = 1: GOTO 2110
  216. 2250  IF C = 1  THEN C = 6: GOTO 2110
  217. 2260  HCOLOR= 0
  218. 2270  FOR X = 1 TO 276  STEP 5
  219. 2280  HPLOT X,1 TO X,156
  220. 2290  NEXT X
  221. 2300  FOR X = 1 TO 156  STEP 5
  222. 2310  HPLOT 1,X TO 276,X
  223. 2320  NEXT X
  224. 2330  FOR X = 0 TO 276  STEP 2
  225. 2340  HPLOT X,1 TO X,156
  226. 2350  NEXT X
  227. 2360  HCOLOR= 7
  228. 2365  HGR 
  229. 2370  FOR X = 156 TO 1  STEP  -5
  230. 2380  HPLOT 135,156 TO 1,X
  231. 2390  HPLOT 135,156 TO 276,X
  232. 2400  NEXT X
  233. 2410  FOR X = 6 TO 276  STEP 5
  234. 2420  HPLOT 135,156 TO X,1
  235. 2430  NEXT X
  236. 2440  GOSUB 60000
  237. 45000  HCOLOR= 7
  238. 45010  HGR 
  239. 45020  HPLOT 28,20
  240. 45030  FOR X = 1 TO 28
  241. 45040  READ A
  242. 45050  READ B
  243. 45060  HPLOT  TO A,B
  244. 45070  NEXT X
  245. 45080  HPLOT 60,50
  246. 45090  FOR X = 1 TO 68
  247. 45100  READ A
  248. 45110  READ B
  249. 45120  HPLOT  TO A,B
  250. 45130  NEXT X
  251. 45140  HPLOT 77,90
  252. 45150  FOR X = 1 TO 18
  253. 45160  READ A
  254. 45170  READ B
  255. 45180  HPLOT  TO A,B
  256. 45190  NEXT X
  257. 45200  HPLOT 80,120
  258. 45210  FOR X = 1 TO 116
  259. 45220  READ A
  260. 45230  READ B
  261. 45240  HPLOT  TO A,B
  262. 45250  NEXT X
  263. 45260  HPLOT 138,88 TO 136,91 TO 137,94 TO 139,91 TO 138,88
  264. 45270  HPLOT 160,92 TO 185,92
  265. 45280  GOSUB 60000
  266. 45290  GOSUB 60000
  267. 45300  GOSUB 60000
  268. 45310  HGR 
  269. 45314  TEXT 
  270. 45315  HOME 
  271. 45320  VTAB 12
  272. 45330  PRINT "   PROGRAM BY LARRY HEWITT"
  273. 49999  GOTO 63999
  274. 50000  DATA  9,39,8,39,7,39,6,39,5,39,4,39,3,39,2,39,1,39
  275. 50010  DATA  29,39,30,39,31,39,32,39,33,39,34,39,35,39,36,39,37,39,38,39,39,39
  276. 50020  DATA   26,26,27,25,28,24,29,23,30,22,31,21,32,20,33,19,34,18,35,17,36,16,37,15,38,14,0,39
  277. 50030  DATA    23,24,23,23,24,22,24,21,25,20,25,19,26,18,26,17,27,16,27,15,28,14,28,13,29,12,29,11,30,10,30,9,31,8,31,7,32,6,32,5,33,4,33,3,34,2,34,1,35,0
  278. 50040  DATA   12,26,11,25,10,24,9,23,8,22,7,21,6,20,5,19,4,18,3,17,2,16,1,15,0,14
  279. 50050  DATA    15,24,15,23,14,22,14,21,13,20,13,19,12,18,12,17,11,16,11,15,10,14,10,13,9,12,9,11,8,10,8,9,7,8,7,7,6,6,6,5,5,4,5,3,4,2,4,1,3,0
  280. 50060  DATA    9,32,8,32,7,31,6,31,5,30,4,30,3,29,2,29,1,28,0,28
  281. 50070  DATA    29,32,30,32,31,31,32,31,33,30,34,30,35,29,36,29,37,28,38,28,39,27
  282. 50080  REM  132 * 2 PIECES OF DATA SO FAR
  283. 50090  DATA     2,7,12,4,14,15,8,13,5,10
  284. 50100  DATA  27,20,28,22,25,24,25,18,30,15,33,18,33,24,20,50,33,25,38,18,41,17,44,18,46,22,45,28,34,50
  285. 50110  DATA   50,20,55,17,59,17,60,20,59,25,50,43,51,49,53,50,58,48,59,43,56,41,55,44,57,45
  286. 50120  DATA  60,50,70,44,75,40,76,35,74,31,72,30,68,33,68,40,70,46,78,50
  287. 50130  DATA  85,44,88,37,90,30,91,33,99,33,101,35,97,43,97,47,101,50,106,44,112,30,112,33,120,33,122,35,117,44,118,52,122,50
  288. 50140  DATA  126,48,134,32,137,29,138,33,133,41,133,47,135,51,137,50,142,45,149,30,133,63,128,68,122,70,116,70,114,68
  289. 50150  DATA  114,64,119,60,160,57,170,54,181,46,184,35,185,23,183,17,180,13,174,11,168,13,162,16,158,25,157,30
  290. 50160  DATA  158,35,161,40,165,42,170,40,173,35,174,30,173,25,170,23,167,25,166,29,167,32,170,30
  291. 50170  DATA  77,90,76,93,77,95,80,92,79,87,75,85,70,87,66,90,61,100,60,105,60,108,63,115,67,119,72,120,77,118,79,116,81,113,80,110
  292. 50180  DATA  84,117,92,104,98,90,98,87,97,85,94,87,92,93,88,108,85,120,92,104,96,99,98,100,101,102,102,105,98,115,97,118,99,120
  293. 50190  DATA  104,119,108,112,113,100,114,103,123,103,124,105,121,110,121,115,122,118,125,120
  294. 50200  DATA  128,118,130,115,133,108,135,100,134,108,133,114,134,118,137,120
  295. 50210  DATA  139,118,143,115,146,110,149,105,151,100,154,104,155,110,154,115,150,119,145,120,143,119,142,117,145,119,153,120
  296. 50220  DATA  157,119,160,115,165,110,170,100,174,85,170,100,167,110,166,115,168,119,172,120
  297. 50230  DATA  175,118,179,115,183,105,185,102,188,100,190,102,191,107,185,120,192,103,195,102,198,100,199,102,199,106,194,120,202,103,204,101,206,100,208,102,207,105,203,115,203,118,206,120
  298. 50240  DATA  210,118,211,114,213,110,215,105,220,101,225,100,230,99,225,100,220,101,215,105,213,110,214,115,216,118,220,120,224,118,227,112,230,101,227,112,227,117,229,120
  299. 50250  DATA  233,118,237,113,240,106,243,100,246,104,247,109,246,114,244,118,238,120,235,117,239,118,245,120,255,116,260,112,262,107,263,98
  300. 60000  FOR X = 1 TO 1500: NEXT X
  301. 60010  RETURN 
  302. 60020  FOR X = 1 TO 500: NEXT X
  303. 60030  RETURN 
  304. 60040  FOR N = 1 TO 5: NEXT N
  305. 60050  RETURN 
  306. 60060  FOR N = 1 TO 2: NEXT N
  307. 60070  RETURN 
  308. 63999  END